perm filename CHAR.CMD[AL,HE] blob sn#656021 filedate 1982-09-27 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00004 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	line editor command characters:
C00004 00003	editor commands:
C00007 00004	extended commands:
C00009 ENDMK
C⊗;
line editor command characters:

(x = done)
	↑@
x	↑A	move ahead (right) one char (same as <ctrl><space> on SAIL)
x	↑B	skip left to char next typed
	↑C	abort current activity - back to top level
x	↑D	delete char
x	↑E	skip to end of expression/line
x	↑F	skip to front of expression/line
	↑G
x	↑H (bs)	move back (left) one char
x	↑I (tab) enter insert mode
	↑J (lf)
x	↑K (vt)	kill right to char next typed
x	↑L (ff)	kill left to char next typed
x	↑M (cr)	done with line - move cursor down one line
	↑N
x	↑O	restore Old line
	↑P
	↑Q
x	↑R	repeat last search/kill command
x	↑S	skip right to char next typed
x	↑T	transpose last two chars
	↑U	(exit & move cursor Up one line)
	↑V
	↑W
	↑X
	↑Y
x	↑Z	zero the expression/line
	↑[ (escape)
x	↑\	numeric arg follows for use with command
	↑]
	↑↑
	↑_ (↑← sail)


load line editor with last line (not applicable for expression editor)
skip right/left one word? --- ↑W???

open next/previous expression for editing - ↑N & ↑P

editor commands:

 control character commands:	(x means also used by line editor)

x	A	attach (not implemented)
x	B	roll screen up 4 lines
	C	copy (not implemented)
x	D	delete n statements, clauses (& labels?)
x	E	exit
x	F	find (not implemented)
 	G	Go to mark (also eventually to label/procedure/???)
x	H
x	I	insert line (statement, clause, label) (same as <tab>)
	J
x	K
x	L 	go to top or line specified (e.g. 22L) (SAIL only)
x	M
x	N	move down (up) n statements (staying at current level)
x	O	move to last (= old) line
	P	Put cursor line at top/bottom of screen
	Q
x	R	
x	S	move down (up) n statements (descending into block structure)
x	T	roll screen up 4 lines
	U	move up one screenful (same as <vt>)
	V	redraw screen
	W	move down one screenful (same as <ff>)
	X
	Y		(for now dumps cursor stack)
x	Z	
 	↑	move up to parent statement
	>	move cursor down 4 lines
	<	move cursor up 4 lines
x	<ff>	move down one screenful (same as ↑W)
x	<vt>	move up one screenful
x	<cr>	move cursor down 1 line
x	<bs>	move cursor up 1 line
x	<space>	modify line
x	<tab>	insert line (statement, clause, label) (same as I)
x	\	numeric arg follows for use with command
	@	move cursor to PC of current active process
	[	surround a stmnt with a BEGIN-END block
	?	help (not implemented)
	!	debugger command follows (see next page for more details)
	   !R = start (run program)
	   !P = proceed
	   !S = step
	   !A = sstep
	   !N = nstep
	   !G = gstep
	   !T = tstep
	   !B = break if arg > 0, unbreak if arg < 0 and unbreak all if arg = 0

currently unused characters:

	]
	"
	#
	%
	&
	'
	(
	)
	*
	-
	=
	+
	:
	;
	.
	,

extended commands:

get <filename>	read in program from specified file
save <filename>	write program out to file

define <varlist> insert assignment stmnts for each variable in list

trace {all}	trace current (or all) process(es)

start		start program execution from beginning (flushes old var values!)
go		continue execution from cursor location
proceed		continue execution from last breakpoint
step		single step - descending into procedure/function calls
sstep		single step - treat procedure/function calls as atomic
nstep		single step - but stay at same lexical level
gstep		giant step up to level of parent statement
tstep		set a temporary breakpoint at current location and proceed
break		set a breakpoint at cursor location
unbreak {all}	clear any breakpoint at cursor location (all breakpoints)

set ppsize #	set page printer size to #
set collect on/off  if on then statements typed in for immediate execution
			will be automatically inserted into the program

mark		place a mark at current statement (use ↑G to move to marks)
unmark		removes any mark at current statement